package com.jxc.service;

import java.util.List;

import org.jfree.chart.JFreeChart;

import com.jxc.model.po.Goods;
import com.jxc.model.vo.DataGrid;
import com.jxc.model.vo.VGoods;
import com.jxc.model.vo.VUser;

public interface GoodsServiceI {

	public void save(VGoods vgoods);

	public DataGrid datagrid(VGoods vgoods);
	
	public DataGrid unsaleDatagrid(VGoods vgoods);

	public void delete(String ids);

	public void update(VGoods vgoods);

	public List<VGoods> combobox(VGoods vgoods);
	
	public void updateLastSaleDate(String ids);
	
	public List<VGoods> search(VGoods vgoods);
	public List<VGoods> searchReturn(VGoods vGoods );
	/**
	 * 发货查询商品（无库存）
	 * @param vGoods
	 * @return List<VGoods>
	 */
	public List<VGoods> searchDeliver(VGoods vGoods );
	
	public Long count(VGoods vgoods);

	public List<VGoods> findByOrid(VGoods vg);
	public List<VGoods> findAmounts(VGoods vg);

	public List<VGoods>  findGoods(String ids);

	public VGoods findTotal(VGoods vg);

	public DataGrid datagridGoodsRepertory(VGoods vg);

	public List<VGoods> findAmountsNoLimit(VGoods vg);

	public	List<VGoods> searchNoLike(VGoods vgoods);

	public List<VGoods>  findAutocomplete(VGoods vg);

	public  List<VGoods>  findForGoods(VGoods vgoods);

	/**
	 * 查询发货明细
	 * @param ids
	 * @return List<VGoods>
	 */
	public List<VGoods> findGoodsDeliver(String ids);

	/**
	 * 查询匹配的商品
	 * @param id
	 * @param vuser
	 * @return DataGrid
	 */
	public DataGrid matchGoods(Long id, VUser vuser);
	
	/**
	 * 获取进销存日统计数据并封装成datagrid
	 * @param model
	 * @return
	 */
	public DataGrid datagridPSID(VGoods model);

	/**
	 * 把进销存日统计数据封装成jfreechart
	 * @param vsls
	 * @param model
	 * @return
	 */
	public JFreeChart getPSIDTotalChart(List<Object[]> vsls, VGoods model);

	/**
	 * 获取进销存日统计数据
	 * @param model
	 * @return
	 */
	public List<Object[]> PSIDTotal(VGoods model);
	
}
